摘要: 直接暴力的签到题。 解题步骤: 先F5找主函数 ​x int __cdecl main(int argc, const char **argv, const char **envp) { int v4; // [esp+18h] [ebp-CCh] int v5; // [esp+1Ch] [ebp 阅读全文
posted @ 2021-02-01 22:36 Silence_Forest 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 先运行一下程序,发现flag是一串乱码,还好知道这个re题,不然又是一顿乱操作(爬。 很快找到主函数,F5反编译。 xxxxxxxxxx int __cdecl __noreturn main(int argc, const char **argv, const char **envp) { int 阅读全文
posted @ 2021-02-01 17:41 Silence_Forest 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 首先,die查看一下,发现是Linux下64位文件,拖入IDA64,找到主函数后F5一下。 非常直白的,输入一串与V8等长的字符串,与加密后的结果一致。 需要注意的点:v7需要转换为字符串,并且由小端序转换为大端序。 脚本如下: 阅读全文
posted @ 2021-01-17 16:45 Silence_Forest 阅读(86) 评论(0) 推荐(0) 编辑
摘要: XCTF level2 pwn之ROP初体验(爬 结合题目,容易知道需要采用ROP方法。 给和我一样小白的餐前点心 ROP&NX? ROP的全称为Return-oriented programming(返回导向编程),可以用来绕过现代操作系统的各种通用防御(比如内存不可执行和代码签名等)。ROP的核 阅读全文
posted @ 2021-01-17 16:41 Silence_Forest 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 攻防世界 RE Crazy WP 首先能直接拖入IDA64反汇编来看main函数: 如箭头所示,主要的步骤为输入、转存、加密、检验(cin, HighTemplar(), caculate(), gerSerial())。 接下来让我们看看每个函数定义。 1.转存 将输入放在a1[16]和a1[48 阅读全文
posted @ 2021-01-11 14:19 Silence_Forest 阅读(210) 评论(0) 推荐(0) 编辑
摘要: Hash-CTF PWN入门题random Part1:编译 正常操作:die查看为64位,拖进IDA,按下神奇的F5,找到主函数。 我们看到了一个重要函数gets(),这是一个对输入没有限制的危险函数。代码很直白,就是以seed[0]为种子生成随机数,每次对随机数模6加1,一共验证十次。众所周知, 阅读全文
posted @ 2020-12-20 20:10 Silence_Forest 阅读(1079) 评论(0) 推荐(0) 编辑